/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package bean;

import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.Iterator;

/**
 *
 * @author fernando
 */
public class Significado implements Serializable {

    private int id;
    private String significado;
    private Date data;
    private ArrayList<Autor> autores;
    private String autoresToString;
    private String quebraLinha = "<br/>";
    private String significadoToString;
    private String autoresInstituicaoToString;
    private String lattesAutoresToString;
    private String autoresToStringNormal;
    private String instituicoesToString;

    public Significado() {
        this.autores = new ArrayList<Autor>();

    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getSignificado() {
        return significado;
    }

    public void setSignificado(String significado) {
        this.significado = significado;
    }

    public Date getData() {
        return data;
    }

    public void setData(Date data) {
        this.data = data;
    }

    public ArrayList<Autor> getAutores() {
        return autores;
    }

    public void setAutores(ArrayList<Autor> autores) {
        this.autores = autores;
    }

    public void addAutor(Autor autor) {
        autores.add(autor);
    }

    public String getAutoresToString() {
        autoresToString = new String();
        Iterator i = autores.iterator();
        Autor a = new Autor();
        while (i.hasNext()) {
            a = (Autor) i.next();
            String nomeAutor = a.getUltimoNome() + ", " + a.getRestanteNome() + "; " + "<br />";

            autoresToString = autoresToString + nomeAutor;
        }


        return autoresToString;
    }

    public String getSignificadoToString() {
        
        significadoToString = new String();
        significadoToString = "<h3>" + "Por " + this.getAutoresToStringNormal() + "</h3>" + "<h5>" +data+ "</h5>" + quebraLinha + quebraLinha + significado + quebraLinha;
        
        return significadoToString;
    }

    public void setSignificadoToString(String significadoToString) {
        this.significadoToString = significadoToString;
    }

    public void setAutoresToString(String autoresToString) {
        this.autoresToString = autoresToString;
    }

    public String getQuebraLinha() {
        return quebraLinha;
    }

    public void setQuebraLinha(String quebraLinha) {
        this.quebraLinha = quebraLinha;
    }

    public String getAutoresInstituicaoToString() {
        autoresInstituicaoToString = new String();
        Iterator i = autores.iterator();
        Autor a = new Autor();
        StringBuilder strBuilder = new StringBuilder();
        while (i.hasNext()) {

            a = (Autor) i.next();
            strBuilder.append(a.getUltimoNome());
            strBuilder.append(", ");
            strBuilder.append(a.getRestanteNome());
            strBuilder.append("(");
            strBuilder.append(a.getInstituicaoAutor().getNome());
            strBuilder.append(") <br />");
            
            /*
            String nomeAutorInstituicao = a.getUltimoNome() + ", " + a.getRestanteNome() + "(" + a.getInstituicaoAutor().getNome() + ") <br />";
            System.out.println("getAutoresInstituicaoToString - nomeAutorInstituicao: " + nomeAutorInstituicao);
            autoresInstituicaoToString = autoresInstituicaoToString + nomeAutorInstituicao;
            System.out.println("getAutoresInstituicaoToString - autoresInstituicaoToString " + autoresInstituicaoToString);*/
        }
        autoresInstituicaoToString = strBuilder.toString();

        return autoresInstituicaoToString;
    }

    public void setAutoresInstituicaoToString(String autoresInstituicaoToString) {
        this.autoresInstituicaoToString = autoresInstituicaoToString;
    }

    public String getLattesAutoresToString() {
        lattesAutoresToString = new String();
        Iterator i = autores.iterator();
        Autor a = new Autor();
        while (i.hasNext()) {

            a = (Autor) i.next();
            String lattesAutor = a.getLattes();
            System.out.println("getLattesAutoresInstituicaoToString - lattes: " + lattesAutor);
            lattesAutoresToString = lattesAutoresToString + lattesAutor;

        }

        return lattesAutoresToString;
    }

    public void setLattesAutoresToString(String lattesAutoresToString) {
        this.lattesAutoresToString = lattesAutoresToString;
    }

    public String getAutoresToStringNormal() {
        autoresToStringNormal = new String();
        Iterator i = autores.iterator();
        Autor a = new Autor();
        while (i.hasNext()) {

            a = (Autor) i.next();
            String nomeAutor = a.getRestanteNome() + " " + a.getUltimoNome();

            autoresToStringNormal = autoresToStringNormal + nomeAutor;

        }
        return autoresToStringNormal;
    }

    public void setAutoresToStringNormal(String autoresToStringNormal) {
        this.autoresToStringNormal = autoresToStringNormal;
    }

    public String getInstituicoesToString() {
        instituicoesToString = new String();
        Iterator i = autores.iterator();
        Autor a = new Autor();
        while (i.hasNext()) {

            a = (Autor) i.next();
            String nomeInstituicao = a.getInstituicaoAutor().getNome();

            instituicoesToString = instituicoesToString + nomeInstituicao;

        }


        return instituicoesToString;
    }

    public void setInstituicoesToString(String instituicoesToString) {
        this.instituicoesToString = instituicoesToString;
    }
    
    
}
